package com.zretc.service;

import com.zretc.entity.House;
import com.zretc.entity.HouseManager;
import com.zretc.entity.Track;

import java.util.List;
import java.util.Map;

public interface HouseManagerService {
    /**
     * 仓库管理员注册
     * @param houseManager
     * @return
     */
    int houseManagerRegiseter(HouseManager houseManager);

    /**
     * 仓库管理员登录
     * @param houseManagerName   用户名
     * @param houseManagerPsw   密码
     * @return
     */
    HouseManager login(String houseManagerName,String houseManagerPsw);

    /**
     * 查询仓库编号，在仓库管理员注册的时候
     * 供选择仓库编号使用
     * @return
     */
    List<String> getHouseId();

    /**
     * 管理员修改仓库信息
     * @param houseId
     * @param houseName
     * @param houseLimit
     * @return
     */
    int updateHoseInfo( String houseId ,String houseName, Double houseLimit);

    /**
     * 根据仓库编号删除仓库
     * @param houseId
     * @return
     */
    int deleteByHouseId(String houseId);

    /**
     * 仓库管理人员添加仓库
     * @param house
     * @return
     */
    int houseManagerAddHouse(House house);

    /**
     * 查询所有的仓库信息
     * @return
     */
     List<House>  getAllHouseList();

    /**
     * 通过仓库编号查找仓库信息
     * @return
     */
     House getByHouseList(String houseId);

    /**
     * 获取地址编号，供新增仓库的时候从下拉框
     * 中选择地址编号
     * @return
     */
     List<String> getAddressIdList();

    /**
     * 根据操作码查询出入库信息
     * @return
     */
     List<Track> getEntityAddDeilveryList(String opCode);

    /**
     * @author 子玉
     * 根据编号查询仓库工作人员
     * @param houseManagerId
     * @return
     */
    HouseManager findHouseManagerById(String houseManagerId);

    /**
     * @author 子玉
     * 根据编号修改仓库工作人员个人信息
     * @param map
     * @return
     */
    boolean updateHouseManagerById(Map<String,Object> map);
}

